/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package bs.global.web;

import bs.stock.dao.ProductoDAO;
import bs.stock.modelo.Producto;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.PostConstruct;
import javax.ejb.EJB;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;

/**
 *
 * @author Claudio
 */
@ManagedBean(name="buscadorComprobanteBean")
@SessionScoped
public class BuscadorComprobanteBean {

    @EJB private ProductoDAO productoDAO;

    private Producto producto;
    private List<Producto> listaProductos;

    /** Creates a new instance of buscadorComprobanteBean */
    public BuscadorComprobanteBean() {

    }

    @PostConstruct
    public void init(){
        producto = new Producto();
        listaProductos = productoDAO.getLista();
    }

    public List<Producto> completeCodigoProducto(String query) {
        List<Producto> suggestions = new ArrayList<Producto>();

        for(Producto p : listaProductos) {
            if(p.getCodigo().contains(query))
                suggestions.add(p);
        }
        return suggestions;
    }

    public List<Producto> completeDescripcionProducto(String query) {
        List<Producto> suggestions = new ArrayList<Producto>();

        for(Producto p : listaProductos) {
            if(p.getDescripcion().contains(query))
                suggestions.add(p);
        }
        return suggestions;  
        
//        <p:autoComplete value="#{autoCompleteBean.selectedPlayer1}" id="basicPojo" completeMethod="#{autoCompleteBean.completePlayer}"  
//                        var="p" itemLabel="#{p.name}" itemValue="#{p}" converter="player" forceSelection="true"/>
    }

    public void seleccionarProducto(Producto p){
        producto = p;
        System.out.println("Producto seleccionado: " + p.getDescripcion());
    }

    public List<Producto> getListaProductos() {
        return listaProductos;
    }

    public void setListaProductos(List<Producto> listaProductos) {
        this.listaProductos = listaProductos;
    }

    public Producto getProducto() {
        return producto;
    }

    public void setProducto(Producto producto) {
        this.producto = producto;
    }

 

}
